1. Technical Field of the Invention
The invention relates generally to communication systems; and, more particularly, it relates to decoding of signals employed in such communication systems.
2. Description of Related Art
Data communication systems have been under continual development for many years. One such type of communication system that has been of significant interest lately is a communication system that employs turbo codes. Another type of communication system that has also received interest is a communication system that employs LDPC (Low Density Parity Check) code. Each of these different types of communication systems is able to achieve relatively low BERs (Bit Error Rates).
A continual and primary directive in this area of development has been to try continually to lower the error floor within a communication system. The ideal goal has been to try to reach Shannon's limit in a communication channel. Shannon's limit may be viewed as being the data rate to be used in a communication channel, having a particular SNR (Signal to Noise Ratio), that achieves error free transmission through the communication channel. In other words, the Shannon limit is the theoretical bound for channel capacity for a given modulation and code rate.
LDPC code has been shown to provide for excellent decoding performance that can approach the Shannon limit in some cases. For example, some LDPC decoders have been shown to come within 0.3 dB (decibels) from the theoretical Shannon limit. While this example was achieved using an irregular LDPC code of a length of one million, it nevertheless demonstrates the very promising application of LDPC codes within communication systems.
The use of LDPC coded signals continues to be explored within many newer application areas. For example, the use of LDPC coded signals has been of significant concern within the IEEE (Institute of Electrical & Electronics Engineers) P802.3an (10GBASE-T) Task Force. This IEEE P802.3an (10GBASE-T) Task Force has been created by the IEEE to develop and standardize a copper 10 Giga-bit Ethernet standard that operates over twisted pair cabling according the IEEE 802.3 CSMA/CD Ethernet protocols. Carrier Sense Multiple Access/Collision Detect (CSMA/CD) is the protocol for carrier transmission access in Ethernet networks. IEEE 802.3an (10GBASE-T) is an emerging standard for 10 Gbps Ethernet operation over 4 wire twisted pair cables. More public information is available concerning the IEEE P802.3an (10GBASE-T) Task Force at the following Internet address:
“http://www.ieee802.org/3/an/”.
This high data rate provided in such applications is relatively close to the theoretical maximum rate possible over the worst case 100 meter cable. Near-capacity achieving error correction codes are required to enable 10 Gbps operation. The latency constraints, which would be involved by using traditional concatenated codes, simply preclude their use in such applications.
Clearly, there is a need in the art for some alternative coding type and modulation implementations that can provide near-capacity achieving error correction.
When considering a coding system that codes the binary information sequence to an LDPC codeword and then maps the LDPC codeword to constellation signals. These constellation signals may also be viewed as being modulation signals as well. A modulation may be viewed as being a particular constellation shape having a unique mapping of the constellation points included therein.
It may also be supposed that the channel noise is AWGN (Additive White Gaussian Noise) with noise variance, σ2. Then, upon receiving the symbol, y, the probability of the transition from the signal, s, in the constellation is provided as follows:
                                          P            s                    ⁡                      (                          y              |              s                        )                          =                              1                          σ              ⁢                                                2                  ⁢                  π                                                              ⁢                      exp            ⁡                          (                                                                    -                    1                                                        2                    ⁢                                          σ                      2                                                                      ⁢                                                      D                    SE                                    ⁡                                      (                                          y                      ,                      s                                        )                                                              )                                                          (                  EQ          ⁢                                          ⁢          1          ⁢          A                )            
where DSE(y,s) is the squared Euclidean distance between y and s. Based on this probability, the maximal likelihood decoding (MLD) tries all of the possible codewords with (EQ 1A) for all possible symbol, s, and finds the one codeword that has the maximal total probabilities. However, due to the inherent complexity of MLD, it is not possible with today's technology to carry out MLD when decoding LDPC coded signals.
One of the sub-optimal decoding approaches (with respect to decoding LDPC coded signals) is the iterative message passing (MP) (or belief propagation (BP)) decoding approach. In this approach, the above provided (EQ 1A) is used as a transition metric.
Since most useful LDPC codes have loops, the iterative decoding of such a code will cause oscillations. These oscillations may result from the fact that either the decoding will not be convergent, or it will converge to a wrong codeword.
In [a] “Performance evaluation of low latency LDPC code,” Katsutoshi Seki of NEC Electronic (presented in IEEE P802.3an Task Force, July, 2004), by using the 2-dimensional noise variance in the metric computation with 1-dimensional noise, a surprise performance gain is obtained.
This document [a] is publicly available at the following Internet address:
[a] “http://www.ieee802.org/3/an/public/jul04/seki—1—0704.pdf”
The so-called 2-dimensional variance translated to the probability of the transition is provided as follows:
                              r          ⁡                      (                          y              ,              s                        )                          =                  exp          ⁡                      (                                                            -                  1                                                  4                  ⁢                                      σ                    2                                                              ⁢                                                D                  SE                                ⁡                                  (                                      y                    ,                    s                                    )                                                      )                                              (                  EQ          ⁢                                          ⁢          1          ⁢          B                )            
When decoding LDPC coded signals, it is well known that before convergence is made to a codeword, the intermediate estimation of the MP decoding algorithm may oscillate. This is because the Hamming distance between estimated codeword and the actually sent codeword may not be decreasing monotonously. Thus, with limited number of iterations, such as 10 or less iterations, the “artificial error floor” may occur at higher SNR (Signal to Noise Ratio). Therefore, a LDPC decoder usually needs a larges number of iterations (e.g., 100 or more decoding iterations) before actual convergence may be achieved. However, to implement an LDPC decoder that requires this large number of decoding iterations is not practical for a system which needs to operate very fast and for which a primary design consideration is to provide for a relatively less costly decoder. As such, there is a need in the art for a means which could hopefully eliminate this artificial error floor that may sometimes occur when decoding LDPC coded signals.